/*************************************************************************
	> File Name: Plugin.h
	> Author: 
	> Mail: 
	> Created Time: 2017年05月25日 星期四 01时12分44秒
 ************************************************************************/

#ifndef _PLUGIN_H
#define _PLUGIN_H
#include"./event/JuzEvent.h"
#include"JuzBase.h"
#include <uuid/uuid.h>

class Plugin:public JuzBase
{
public:
	Plugin();
    virtual ~Plugin();

    virtual void eventListen(JuzEvent *event); //监听的事件 回调!
    virtual void sendEvent(JuzEvent *event);//推送事件

    virtual void registeredEvent(string eName,int priority,uuid_t *uid);
    virtual void registeredEvent(string eName,int priority);//注册事件!
    virtual void bindFinsh();//主插件绑定完成,在这里面注册事件

    void bindPlugin(Plugin *mainPlugin,uuid_t *uid);
private:
    Plugin *mainPlugin;
    uuid_t *mUUID;
    bool isSendYes;
};

#endif
